package w83b.w83bOperacionesPaso.w83bComun;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.lang.StringUtils;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import w83b.w83bBeans.W83bUsuarioXLNetsBean;
import w83b.w83bUtilidadesComunes.W83bClsConstantes;
import w83b.w83bUtilidadesComunes.W83bClsTrazas;
import w83b.w83bUtilidadesComunes.W83bUtilidadesN38API;
import es.ejie.frmk.presentacion.operacion.paso.Q70ActionPasoOP;
import es.ejie.frmk.presentacion.sesiondatos.Q70ContextoEJIE;

// TODO: Auto-generated Javadoc
/**
 * The Class W83bAccesoAplicacionOPAction.java.
 *
 * @author Deusto Sistemas
 */
public class W83bAccesoAplicacionOPAction extends Q70ActionPasoOP{

	
	/**
	 * processOP
	 * @param contexto a
	 * @param mapping a
	 * @param errores a
	 * @param form a
	 * @param request a
	 * @param response a
	 * @throws Exception e
	 */	
	protected void processOP(Q70ContextoEJIE contexto, ActionErrors errores, ActionMapping mapping,
			ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		
	}

	/**
	 * processForward
	 * @param contexto a
	 * @param mapping a
	 * @param errors a
	 * @param form a
	 * @param request a
	 * @param response a
	 * @throws Exception e
	 * @return ActionForward
	 */	
	protected ActionForward processForward(Q70ContextoEJIE contexto, ActionErrors errors, ActionMapping mapping, 
			ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
			
		W83bUsuarioXLNetsBean usuarioBean = W83bUtilidadesN38API.getUsuarioXLNets(request);//NOPMD
		
		W83bClsConstantes.inicLISTADO_PERMISOS_W83B();
		
		if(null!=usuarioBean){//NOPMD
			W83bClsTrazas.traza(null, "----->Tengo usuario"+usuarioBean.getIdUsuario());
			W83bClsTrazas.trazaError(null,"iniciooooooo calleDelegacion - "+usuarioBean.getCalleDelegacion(),null);
			if(W83bUtilidadesN38API.permisosW83b(usuarioBean)){
				contexto.set(W83bClsConstantes.CONSTANTE_CONTEXTO_USUARIO,usuarioBean);
				String idioma = usuarioBean.getIdioma();//NOPMD
				
				if(StringUtils.isEmpty(idioma)||W83bClsConstantes.CONSTANTE_CASTELLANO_XLNETS.equals(idioma)){
					contexto.set(W83bClsConstantes.CONSTANTE_CONTEXTO_IDIOMA, W83bClsConstantes.CONSTANTE_CASTELLANO);
				}else{
					contexto.set(W83bClsConstantes.CONSTANTE_CONTEXTO_IDIOMA, W83bClsConstantes.CONSTANTE_EUSKARA);			
				}
			}else{
				return mapping.findForward("noPermitido");
			}		
			
		
		}else{
			W83bClsTrazas.traza(null, "----->NO Tengo usuario");
			response.sendRedirect(W83bUtilidadesN38API.XLNetURL(request,mapping.getModuleConfig().getPrefix(),mapping.getPath() + ".do"));
		}
		
		return mapping.findForward("ok");
	}

}
